package cn.flying.cloud.core.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * @description: 一个配置文件
 * @author: admin
 * @date: 2023年06月05日 19:08
 * @version: 1.0
 */
@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Bean
    public WebMvcConfigurer corsConfigurer() {
        return new WebMvcConfigurer() {
            @Override
            public void addCorsMappings(CorsRegistry registry) {
                registry.addMapping("/**") // 允许跨域的路径
                        .allowedOrigins("*") // 允许跨域请求的域名
                        .allowedMethods("*") // 允许的请求方法
                        .allowedHeaders("*") // 允许的请求头
                        .allowCredentials(true)// 是否允许证书（cookies）
                        .maxAge(3600); // 预检请求的缓存时间（减少重复预检）
            }
        };
    }
}